home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-10-30 | 5.4 KB | 217 lines | [TEXT/CWIE] |
- { ModelessRadios.p -- modeless dialog }
- { Created 10/30/98 1:06 PM by AppMaker }
-
- Unit ModelessRadios;
- Interface
-
- Uses
- Types,
- Quickdraw,
- Controls,
- Dialogs,
- Events,
- Lists,
- Menus,
- TextEdit,
- DModelessRadiosData,
- AMDialog;
-
- Procedure ShowModelessRadios;
-
- type
- CModelessRadios = object (AMDialog)
-
- {data members}
- mData: DModelessRadiosData;
-
- mRadioGroupGroupHandle: ControlHandle;
- mStandardHandle: ControlHandle;
- mGroupBoxHandle: ControlHandle;
- mGroupGroupHandle: ControlHandle;
- mGroupRadio1Handle: ControlHandle;
- mGroupRadio2Handle: ControlHandle;
- mGroupRadio3Handle: ControlHandle;
- mGraphicBoxHandle: ControlHandle;
- mGraphicGroupHandle: ControlHandle;
- mStopHandle: ControlHandle;
- mGoHandle: ControlHandle;
- mBevelBoxHandle: ControlHandle;
- mBevelGroupHandle: ControlHandle;
- mRadioButtonHandle: ControlHandle;
- mRadioButton2Handle: ControlHandle;
- mTextBoxHandle: ControlHandle;
- mTextGroupHandle: ControlHandle;
- mNameHandle: ControlHandle;
- mKindHandle: ControlHandle;
- mSizeHandle: ControlHandle;
-
- {methods - public}
- Procedure ConnectToData (inData: AMSignaler); Override;
-
- {methods - internal}
- Procedure FinishMake; Override;
- Procedure DoItem (inItemHit: SInt16); Override;
- Procedure DataChanged (inDataID: longint); Override;
-
- end;
-
- var
- sModelessRadiosPtr: DialogPtr;
-
- {----------}
- Implementation
-
- Uses
- ResourceDefs,
- ControlUtils,
- Miscellany;
-
- const
- kRadioGroupGroup = 1;
- kStandardRadio = 1;
- kGroupBox = 2;
- kGroupGroup = 3;
- kGroupRadio1 = 3;
- kGroupRadio2 = 4;
- kGroupRadio3 = 5;
- kGraphicBox = 6;
- kGraphicGroup = 7;
- kStopRadio = 7;
- kGoRadio = 8;
- kBevelBox = 9;
- kBevelGroup = 10;
- kRadioButtonRadio = 10;
- kRadioButton2Radio = 11;
- kTextBox = 12;
- kTextGroup = 13;
- kNameRadio = 13;
- kKindRadio = 14;
- kSizeRadio = 15;
-
-
- {----------}
- Function NewModelessRadios: CModelessRadios;
- var
- dialog: CModelessRadios;
- begin
- dialog := nil;
- New (dialog);
-
- if dialog <> nil then begin
- dialog.Initialize;
- end;
- NewModelessRadios := dialog;
- end;
-
- {----------}
- Procedure CreateModelessRadios;
- var
- dialog: CModelessRadios;
- data: DModelessRadiosData;
- begin
- dialog := NewModelessRadios;
- data := NewDModelessRadiosData;
-
- dialog.MakeDialog (DLOG_ModelessRadios);
- dialog.ConnectToData (data);
- end; {CreateModelessRadios}
-
- {----------}
- Procedure ShowModelessRadios;
- begin
- if sModelessRadiosPtr = nil then begin
- CreateModelessRadios;
- end;
- if sModelessRadiosPtr <> nil then begin
- SelectWindow (sModelessRadiosPtr);
- ShowWindow (sModelessRadiosPtr);
- end;
- end; {ShowModelessRadios}
-
- {----------}
- Procedure CModelessRadios.FinishMake;
- var
- errCode: OSErr;
- begin
- sModelessRadiosPtr := mDialog;
-
- mRadioGroupGroupHandle := GetControlItem (kRadioGroupGroup);
- mStandardHandle := GetControlItem (kStandardRadio);
- mGroupBoxHandle := GetControlItem (kGroupBox);
- mGroupGroupHandle := GetControlItem (kGroupGroup);
- mGroupRadio1Handle := GetControlItem (kGroupRadio1);
- mGroupRadio2Handle := GetControlItem (kGroupRadio2);
- mGroupRadio3Handle := GetControlItem (kGroupRadio3);
- mGraphicBoxHandle := GetControlItem (kGraphicBox);
- mGraphicGroupHandle := GetControlItem (kGraphicGroup);
- mStopHandle := GetControlItem (kStopRadio);
- mGoHandle := GetControlItem (kGoRadio);
- mBevelBoxHandle := GetControlItem (kBevelBox);
- mBevelGroupHandle := GetControlItem (kBevelGroup);
- mRadioButtonHandle := GetControlItem (kRadioButtonRadio);
- errCode := SetBevelButtonGraphicAlignment (mRadioButtonHandle, kControlBevelButtonAlignCenter, 0, 0);
- mRadioButton2Handle := GetControlItem (kRadioButton2Radio);
- errCode := SetBevelButtonGraphicAlignment (mRadioButton2Handle, kControlBevelButtonAlignCenter, 0, 0);
- mTextBoxHandle := GetControlItem (kTextBox);
- mTextGroupHandle := GetControlItem (kTextGroup);
- mNameHandle := GetControlItem (kNameRadio);
- mKindHandle := GetControlItem (kKindRadio);
- mSizeHandle := GetControlItem (kSizeRadio);
- end;
-
- {----------}
- Procedure CModelessRadios.ConnectToData (
- inData: AMSignaler); Override;
- begin
- inherited ConnectToData (inData);
- mData := DModelessRadiosData (inData);
-
- SetControlValue (mRadioGroupGroupHandle, mData.GetRadioGroup3);
- SetControlValue (mGroupGroupHandle, mData.GetGroup3);
- SetControlValue (mGraphicGroupHandle, mData.GetGraphic5);
- SetControlValue (mBevelGroupHandle, mData.GetBevel3);
- SetControlValue (mTextGroupHandle, mData.GetText3);
- end;
-
- {----------}
- Procedure CModelessRadios.DoItem (
- inItemHit: SInt16);
- begin
- case inItemHit of
- kRadioGroupGroup:
- mData.SetRadioGroup3 (GetControlValue (mRadioGroupGroupHandle));
- kGroupGroup:
- mData.SetGroup3 (GetControlValue (mGroupGroupHandle));
- kGraphicGroup:
- mData.SetGraphic5 (GetControlValue (mGraphicGroupHandle));
- kBevelGroup:
- mData.SetBevel3 (GetControlValue (mBevelGroupHandle));
- kTextGroup:
- mData.SetText3 (GetControlValue (mTextGroupHandle));
-
- end; {switch}
- end;
-
- {----------}
- Procedure CModelessRadios.DataChanged (
- inDataID: longint); Override;
- begin
- if inDataID = idRadioGroup3 then begin
- SetControlValue (mRadioGroupGroupHandle, mData.GetRadioGroup3);
- end;
- if inDataID = idGroup3 then begin
- SetControlValue (mGroupGroupHandle, mData.GetGroup3);
- end;
- if inDataID = idGraphic5 then begin
- SetControlValue (mGraphicGroupHandle, mData.GetGraphic5);
- end;
- if inDataID = idBevel3 then begin
- SetControlValue (mBevelGroupHandle, mData.GetBevel3);
- end;
- if inDataID = idText3 then begin
- SetControlValue (mTextGroupHandle, mData.GetText3);
- end;
- end;
-
- End.
-